import random
import sys
import os

# 使用setup文件后，需要使用sys
# os.path.abspath(__file__) 获取当前文件的绝对路径
# os.path.dirname() 获取目录路径，连续调用3次得到项目根目录，这是因为当前文件的深度是3层
# project_root = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
# 将项目根目录添加到Python的模块搜索路径中，这样可以使用项目中的其他模块
# sys.path.append(project_root)

from config.config import Config
from utils.logger import setup_logger

# logger是初始化值，在创建对象时调用
logger = setup_logger()

class NumberGenerator:
    # 初始化方法，设置最小和最大随机数，从配置文件中获取，self代表当前对象
    def __init__(self):
        self.min_number = Config.MIN_NUMBER
        self.max_number = Config.MAX_NUMBER
    # 生成随机数的方法，无需定义返回值
    def generate(self):
        # 调用random库的randint方法，生成随机数
        number = random.randint(self.min_number, self.max_number)
        # 记录生成的随机数
        logger.info(f"生成随机数: {number}")
        return number 